@stepsPrefixClass: w-steps;

.@{stepsPrefixClass}{
  font-size: 0;
  width: 100%;
  line-height: 1.5;
  
  .@{stepsPrefixClass}-item {
    position: relative;
    display: inline-block;
    vertical-align: top;
    &:last-child {
      .@{stepsPrefixClass}-item-tail{
        display: none;
        text-align: center;
      }
    }
    &-tail{
      position: absolute;
      left: 0;
      width: 100%;
      top: 13px;
      padding: 0 10px;
      height: 1px;
      i{
        display: block;
        width: 100%;
        height: 100%;
        position: relative;
        background-color: #e9e9e9;
        &:after{
          position: absolute;
          content: " ";
          top: 0;
          width: 0;
          height: 100%;
          transition: all .6s;
        }
      }
    }
    &-head,&-main{
      position: relative;
      display: inline-block;
      vertical-align: top;
    }
    &-head{
      padding-left: 10px;
      background: #fff;
      &:not(:first-child){
        margin-left: -10px;
      }
    }
    &-title{
      padding-right: 10px;
      line-height: 26px;
      font-size: 14px;
      font-weight: 700;
      background: #fff;
      color: #999;
      display: inline-block;
    }
    &-description{
      font-size: 12px;
      color: #999;
      max-width: 130px;
    }
    &-inner {
      display: block;
      border: 1px solid rgba(0,0,0,.25);
      color: rgba(0,0,0,.25);
      background-color: #fff;
      width: 26px;
      height: 26px;
      line-height: 23px;
      text-align: center;
      border-radius: 26px;
      font-size: 14px;
      margin-right: 8px;
      transition: background-color .3s ease,border-color .3s ease;
    }
    &-process,&-finish {
      .@{stepsPrefixClass}-item-inner{
        border-color: #2d8cf0;
        background-color: #2d8cf0;
        color:#fff;
        &.is-icon{
          .@{stepsPrefixClass}-icon{
            color: #108ee9;
          }
        }
      }
    }
    &-finish{
      .@{stepsPrefixClass}-item-tail i:after{
          background-color: #2d8cf0;
          width: 100%;
      }
    }
    &-process{
      .@{stepsPrefixClass}-item-title,
      .@{stepsPrefixClass}-item-description,{
        color: rgba(0,0,0,.65);
      }
    }
    &-error{
      .w-steps-item-inner{
        border-color: #f04134;
        background-color: #fff;
      }
      .@{stepsPrefixClass}-item-title,
      .@{stepsPrefixClass}-item-description,
      .@{stepsPrefixClass}-icon,
      i[class^="w-icon-"]
      {
        color: #f04134;
      }
    }
  }
  .@{stepsPrefixClass}-next-error .@{stepsPrefixClass}-item-tail i:after{
    background-color: #f04134;
    width: 100%;
    transition: all .6s;
  }
  &-custom{
    .@{stepsPrefixClass}-item-inner.is-icon{
      background: none;
      border: 0;
      width: 26px;
      height: 26px;
      font-size: 26px;
    }
  }
  &-dot{
    .@{stepsPrefixClass}-item-main{
      display: block;
      text-align: center;
    }
    .@{stepsPrefixClass}-item-inner{
      margin: 0 auto;
      width: 7px;
      height: 7px;
      line-height: 5px;
      border: 0;
    }
    .@{stepsPrefixClass}-item-title{
      padding-top: 5px;
    }
    .@{stepsPrefixClass}-item-description{
      max-width: initial;
    }
    .@{stepsPrefixClass}-item-error{
      .w-steps-item-tail i:after{
        background-color: #2d8cf0;
      }
      .@{stepsPrefixClass}-item-inner{
        background: #f04134
      }
      .@{stepsPrefixClass}-item-tail {
        padding-right: 50%;
        background:#e9e9e9;
        i:after{
          background-color: #f04134;
          width: 100%;
        }
      }
    }
    .@{stepsPrefixClass}-item-finish.@{stepsPrefixClass}-next-error{
      .@{stepsPrefixClass}-item-tail {
        i:after{
          background-color: #2d8cf0;
        }
      }
    }
    .@{stepsPrefixClass}-item-wait .@{stepsPrefixClass}-item-inner{
      border-color: rgba(0,0,0,.25);
      background-color:rgba(0, 0, 0, 0.25);
      .@{stepsPrefixClass}-dot {
        background: rgba(0,0,0,.25);
      }
    }
    .@{stepsPrefixClass}-item-process {
      .@{stepsPrefixClass}-item-tail{
        padding-right: 50%;
        background:#e9e9e9;
        i:after{
          background-color: #2d8cf0;
          width: 100%;
        }
      }
    }
    .@{stepsPrefixClass}-item-tail{
      padding: 0;
      width: 100%;
      position: initial;
      height: 2px;
    }
    .w-steps-item:first-child{
      .@{stepsPrefixClass}-item-tail{
        padding-left: 50%;
      }
    }
    .w-steps-item:last-child{
      .@{stepsPrefixClass}-item-tail{
        display: block;
        padding-right: 50%;
      }
    }
    .@{stepsPrefixClass}-item-head:not(:first-child){
      margin-left: 0;
      padding-left: 0;
      text-align: center;
      display: block;
    }
    .@{stepsPrefixClass}-item-head{
      background: transparent;
      margin-top: -4px;
    }
    &.@{stepsPrefixClass}-vertical{
      .@{stepsPrefixClass}-item {
        &:last-child .@{stepsPrefixClass}-item-tail{
          display: none;
        }
        .@{stepsPrefixClass}-item-tail{
          position: absolute;
          left: 3px;
          padding: 0px 0 21px 0;
        }
      }
      .@{stepsPrefixClass}-item-inner{
        margin: 0 0;
      }
      .@{stepsPrefixClass}-item-main{
        text-align: left;
        padding-left: 20px;
        padding-bottom: 24px;
        margin-top: -21px;
      }
      .@{stepsPrefixClass}-next-error{
        .w-steps-item-tail i:after{
          background-color: #f04134;
        }
      }
      .@{stepsPrefixClass}-item-error{
        .w-steps-item-tail {
          background-color: transparent;
        }
        .w-steps-item-tail i:after{
          background-color: transparent;
        }
      }
    }
  }
  &-vertical{
    & >.@{stepsPrefixClass}-item{
      display: block;
      &>.@{stepsPrefixClass}-item-tail{
        height: 100%;
        width: 1px;
        padding: 18px 0 18px  0;
        left: 13px;
      }
    }
    .@{stepsPrefixClass}-item-main{
      padding-bottom: 12px;
      overflow: hidden;
    }
    .@{stepsPrefixClass}-item .@{stepsPrefixClass}-item-main .@{stepsPrefixClass}-item-description{
      max-width: inherit;
    }
  }
}